Ce logiciel permet à un utilisateur de se connecter sur sa machine à distance à la manière de RDP sur Windows (Connexion Bureau à distance).
Vous prenez le contrôle physique de l'ordinateur, c'est-à-dire l'écran (:0) du serveur X, le clavier et la souris. Si une personne se trouve devant l'écran, elle voit alors ce que vous faites. De plus, le serveur VNC est persistant, vous pouvez déconnecter votre client vnc sans que cela ne ferme la session locale. Pratique pour donner un coup de main à quelqu'un en difficulté sur ubuntu ou tout autre distribution.
Peut aussi être utile pour contrôler un PC sans écran (Serveur NFS, d'impression ou autres)
Le contenu de cette rubrique est grandement issue de la traduction de l'aide fournie avec X11vnc.
La boîte de dialogue Propriétés vous permet de définir certains paramètres de base d'un fichier exécutant le serveur x11vnc. Après les avoir modifiées, appuyez sur "OK" ou "Appliquer" pour appliquer les modifications, ou appuyez sur "Annuler" pour ignorer leur application.
Ou "accepter les connexions".
Permet de déterminer si les visualiseurs VNC sont autorisés à se connecter ou non. Il correspond aux commandes de contrôle à distance "-R unlock" et "-R lock".
Ou "Demander confirmation".
Permet de déterminer si un menu contextuel sera présenté à l'écran lorsque un nouveau visualiseur VNC tente de se connecter. La personne peut choisir d'accepter, de rejeter la connexion ou d'accepter le message en mode visualisation uniquement. Il correspond aux commandes "-R accept:popup". et les commandes de la télécommande "-R accept:".
ou "tous les Clients en mode visualisation uniquement".
Permet de choisir l'affichage du bureau VNC est en mode visualisation uniquement. Tous les clients ne pourront que regarder lorsque cette option est activée (quelle que soit la façon dont ils sont réglés). Il correspond aux commandes "-R viewonly" et "-R noviewonly"
Ou "Partagés"
Permet de déterminer si plusieurs connexions simultanées sont autorisées. ou pas. Il correspond au "-R partagé" et au "-R partagé". les commandes à distance.
Ou "Découverte de service (Zeroconf)".
Permet de déterminer si ce serveur VNC doit se faire de la publicité via Zeroconf. (aussi appelé Bonjour, mDNS et avahi). Les utilisateurs de VNC peuvent alors trouver ce service sur le réseau local. Il correspond au "-R zeroconf". et "-R nozeroconf".
Ou "Fournir l'applet de visionnage Java".
Permet de déterminer si ce serveur VNC doit fournir un visualiseur Java VNC Viewer. L'applet est accessible via HTTP sur http://hostname:5800/ (ou port 5800+n pour VNC 5900+n). Un navigateur Web compatible java peut alors se connecter à l'application par VNC. Si SSL est actif, l'URL HTTPS https://hostname:5900/ (etc.) fonctionneront également. Cela nécessite le fichier jar de la visionneuse java x11vnc (partagé/x11vnc/classes) à installer. Il correspond aux commandes "-R http" et "-R nohttp".
Ou "Couleur d'arrière-plan solide"
Permet d'améliorer les performances de la VNC. Si cette option est activée, x11vnc essaiera d'utiliser l'arrière-plan du bureau comme une couleur unie (ce qui comprime considérablement l'image). Il correspond aux commandes "-R solid" et "-R nosolid".
Ou "Mot de passe"
Permet de définir le mot de passe de session que les utilisateurs peuvent utiliser pour obtenir un accès complet. À l'affichage. Cela ne fonctionnera que si x11vnc a été démarré avec graphiquement ou présent dans la zone de notification.
Ou "Mot de passe en mode visualisation".
Permet de définir le mot de passe de session que les utilisateurs peuvent utiliser pour n'avoir accès qu'à l'affichage. l'accès à l'écran. Cela ne fonctionnera que si x11vnc a été démarré avec graphiquement ou présent dans la zone de notification.
NOTE : Ces mots de passe "session" ne durent que pour le x11vnc actuel. Ils ne sont pas mémorisés, voir les options de x11vnc -storepasswd, -passwd, et -rfbauth pour l'utilisation des mots de passe sauvegardés.
Vous pouvez utiliser l'interface graphique de x11vnc disponible maintenant dans votre menu applications.
Commencez par ouvrir un Terminal
Générez un fichier password :
x11vnc -storepasswd "password" ~/.vnc_passwd
Changer les droits d'accès du fichier de mot de passe avec:
chmod 751 ~/.vnc_passwd
Ensuite lancez x11vnc en tapant dans un terminal:
x11vnc -many -rfbauth ~/.vnc_passwd
Il vous reste maintenant à tester votre serveur VNC avec le visionneur de votre choix. Voir: Bureau à distance
Vous pouvez maintenant ajouter x11vnc à vos "Applications au démarrage" en y ajoutant la commande de lancement citée juste au dessus.
L'astuce consiste à créer le fichier "~/.config/autostart/x11vnc.desktop" à la main et y ajouter ces lignes:
[Desktop Entry] Type=Application Name=x11vnc Exec=x11vnc -many -rfbauth /root/.vnc_passwd
(fonctionne sous Lucid, contrairement à ce qui précède)
Editer le fichier /etc/gdm/Init/Default et rajouter une ligne, à la fin juste avant exit 0, comme celle-ci:
/usr/bin/x11vnc -rfbauth /home/utilisateur/.vnc_passwd -noxdamage -forever -bg -o /var/log/x11vnc.log -rfbport 5900
Remplacer utilisateur par le nom de l'utilisateur. Le port 5900 est celui prévu par défaut. S'il a été modifié l'adapter en conséquence.
.vnc_passwd correspond à la commande citée au-dessus pour la création du mot de passe.
Enregister le fichier et se déconnecter pour que changement prenne effet.
A partir de Ubuntu 16.04, on utilise systemd en remplacement de Init.d ou upstart pour la gestion des services au demarrage.
Créez le fichier /etc/systemd/system/x11vnc.service avec les droits d'administration et remplissez-le comme ceci :
[Unit] Description=x11vnc remote desktop server After=multi-user.target [Service] Type=simple ExecStart=/usr/bin/x11vnc -forever -ncache 10 -rfbauth /home/toto/.vnc_passwd User=toto Restart=on-failure [Install] WantedBy=multi-user.target
Vous pouvez maintenant lancer le service et vérifier son bon fonctionnement :
sudo systemctl daemon-reload sudo systemctl start x11vnc sudo systemctl status x11vnc
Si tout va bien, il n'y plus qu'à dire à systemd de lancer x11vnc au démarrage :
sudo systemctl enable x11vnc.service
En démarrant x11vnc via inetd vous aurez la possibilité de voir l'écran de votre ordinateur distant quel que soit l'utilisateur connecté ! (Vous verrez même l'écran de login !)
Pratique si vous ne voulez pas que l'ordinateur distant ne soit pas en autologin et donc soit protégé par un second mot de passe par dessus le protocol VNC.
Pour cela, il faut tout d'abord installer inetd. Installez inetd en installant le paquet openbsd-inetd (je vous déconseille le traditionnel inetd qui n'est plus supporté ni xinetd qui n'est pas bien intégré dans Ubuntu)
Créez un mot de passe pour votre serveur VNC en tapant dans un terminal:
sudo x11vnc -storepasswd "password" /root/.vnc_passwd
Ouvrez ensuite le fichier de configuration d'inetd /etc/inetd.conf
ajoutez une ligne pour VNC entre les lignes #:INTERNAL: Internal services et #:STANDARD: These are standard services:
5900 stream tcp nowait root /usr/sbin/tcpd /usr/bin/x11vnc -inetd -q -rfbauth /root/.vnc_passwd -display :0 -auth /var/run/lightdm/root/:0
Enregistrez le fichier, puis redemarrez le service inetd via la commande:
sudo service openbsd-inetd restart
VNC devrait maintenant être en route dès le démarrage de votre PC
Dans l'état actuel des choses, si vous avez un routeur, VNC n'est accessible que sur votre réseau local. Si vous voulez y accéder à travers internet il faudra ouvrir le port 5900 en TCP en pointant le port vers l'IP de l'ordinateur hébergeant le serveur VNC.
ps wwaux|grep auth
Pour enlever l'option nolisten il faut apparemment ajouter dans le fichier /etc/gdm/custom.conf:
[security] DisallowTCP=false
[SeatDefaults] xserver-allow-tcp=true]]
Pour redemarrer Lightdm :
sudo service lightdm restart
Au prochain démarrage l'option aura disparu.
Pour supprimer cette application, il suffit de supprimer son paquet. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez.
Contributeur principal :
.